<html><head><title>Game2D module: game engine driven by Artemax systems. reference</title>
<link rel=stylesheet Type=text/css href='../../../../doc/bmxstyle.css'>
</head><body>
<table width=100% cellspacing=0><tr align=center><td class=small>&nbsp;</td>
<td class=small width=1%><b>wdw.game2d:</b></td>
<td class=small width=1%><a href=#types class=small>Types</a></td>
<td class=small width=1%><a href=#modinfo class=small>Modinfo</a></td>
<td class=small width=1%><a href='../../../../mod/wdw.mod/game2d.mod/game2d.bmx' class=small>Source</a></td>
<td class=small>&nbsp;</td></tr></table>
<h1>Game2D module: game engine driven by Artemax systems.</h1>
<h2><a name=types></a>Types Summary</h2><table class=doc width=100%>
<tr><td class=docleft width=1%><a href=#ArtemaxInterface>ArtemaxInterface</a></td><td class=docright>
Game2d/Artemax interface for LUA scripts.
</td></tr>
<tr><td class=docleft width=1%><a href=#TCameraComponent>TCameraComponent</a></td><td class=docright>
Camera component.
</td></tr>
<tr><td class=docleft width=1%><a href=#TCameraSystem>TCameraSystem</a></td><td class=docright>
Camera System.
</td></tr>
<tr><td class=docleft width=1%><a href=#TCollisionComponent>TCollisionComponent</a></td><td class=docright>
Collision box component.
</td></tr>
<tr><td class=docleft width=1%><a href=#TCollisionSystem>TCollisionSystem</a></td><td class=docright>
Bounding box.
</td></tr>
<tr><td class=docleft width=1%><a href=#TColorComponent>TColorComponent</a></td><td class=docright>
RGBA component.
</td></tr>
<tr><td class=docleft width=1%><a href=#TEngine>TEngine</a></td><td class=docright>
Game2D Engine.
</td></tr>
<tr><td class=docleft width=1%><a href=#TExpirationComponent>TExpirationComponent</a></td><td class=docright>
A simple expiration value component.
</td></tr>
<tr><td class=docleft width=1%><a href=#TExpirationSystem>TExpirationSystem</a></td><td class=docright>
Expiration system. Typically used for bullets, particles, triggers, buttons, etc.
</td></tr>
<tr><td class=docleft width=1%><a href=#TFixedTime>TFixedTime</a></td><td class=docright>
Fixed time step and render tweening.
</td></tr>
<tr><td class=docleft width=1%><a href=#TGame>TGame</a></td><td class=docright>
State based game using Artemax systems.
</td></tr>
<tr><td class=docleft width=1%><a href=#TGameState>TGameState</a></td><td class=docright>
A game state template.
</td></tr>
<tr><td class=docleft width=1%><a href=#TLayeredRenderSystem>TLayeredRenderSystem</a></td><td class=docright>
Layered Render system.
</td></tr>
<tr><td class=docleft width=1%><a href=#TMovementSystem>TMovementSystem</a></td><td class=docright>
Movement System. Uses interpolation.
</td></tr>
<tr><td class=docleft width=1%><a href=#TPhysicsComponent>TPhysicsComponent</a></td><td class=docright>
Simple Newton physics component.
</td></tr>
<tr><td class=docleft width=1%><a href=#TPhysicsSystem>TPhysicsSystem</a></td><td class=docright>
Simple Newton physics system. It handles acceleration, velocity and friction.
</td></tr>
<tr><td class=docleft width=1%><a href=#TPositionComponent>TPositionComponent</a></td><td class=docright>
Position component, also handles render tweening.
</td></tr>
<tr><td class=docleft width=1%><a href=#TQuadTreeComponent>TQuadTreeComponent</a></td><td class=docright>
Quad Tree item component.
</td></tr>
<tr><td class=docleft width=1%><a href=#TQuadTreeNode>TQuadTreeNode</a></td><td class=docright>
Node for use in a quad-tree Artemax system.
</td></tr>
<tr><td class=docleft width=1%><a href=#TQuadTreeSystem>TQuadTreeSystem</a></td><td class=docright>
Quad Tree entity system.
</td></tr>
<tr><td class=docleft width=1%><a href=#TRenderable>TRenderable</a></td><td class=docright>
Contains entity render related code.
</td></tr>
<tr><td class=docleft width=1%><a href=#TRenderFormComponent>TRenderFormComponent</a></td><td class=docright>
TRenderForm component.
</td></tr>
<tr><td class=docleft width=1%><a href=#TRenderLayerComponent>TRenderLayerComponent</a></td><td class=docright>
Render layer component.
</td></tr>
<tr><td class=docleft width=1%><a href=#TResources>TResources</a></td><td class=docright>
Manages resources.
</td></tr>
<tr><td class=docleft width=1%><a href=#TScriptComponent>TScriptComponent</a></td><td class=docright>
LUA Script component.
</td></tr>
<tr><td class=docleft width=1%><a href=#TScriptSystem>TScriptSystem</a></td><td class=docright>
LUA Scripting System. Uses LuaJIT 2.0, which is added to LuGI.core.
</td></tr>
<tr><td class=docleft width=1%><a href=#TTransformComponent>TTransformComponent</a></td><td class=docright>
Transform describes scale and rotation.
</td></tr>
<tr><td class=docleft width=1%><a href=#TTransition>TTransition</a></td><td class=docright>
Game state transition.
</td></tr>
<tr><td class=docleft width=1%><a href=#TTransitionEmpty>TTransitionEmpty</a></td><td class=docright>
An empty gamestate transition.
</td></tr>
<tr><td class=docleft width=1%><a href=#TTransitionFadeIn>TTransitionFadeIn</a></td><td class=docright>
A fade-in effect.
</td></tr>
<tr><td class=docleft width=1%><a href=#TTransitionFadeOut>TTransitionFadeOut</a></td><td class=docright>
A slow fade-out effect.
</td></tr>
</table>
<h2
 id=typesdet>Types
</h2>
<table class=doc width=100% cellspacing=3 id=ArtemaxInterface>
<tr><td class=doctop colspan=2>Type ArtemaxInterface {expose static noclass hidefields}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Game2d/Artemax interface for LUA scripts.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>The methods in this type are exposed to the LUA scripting system.
Except the hidden methods. These are used from blitzmax.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=ArtemaxInterface_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#GetColorComponent>GetColorComponent</a></td><td class=docright>
Returns color component for passed entity.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetExpirationComponent>GetExpirationComponent</a></td><td class=docright>
Returns expiration component for passed entity.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetPhysicsComponent>GetPhysicsComponent</a></td><td class=docright>
Returns physics component for passed entity.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetPositionComponent>GetPositionComponent</a></td><td class=docright>
Returns position component for passed entity.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetTransformComponent>GetTransformComponent</a></td><td class=docright>
Returns transform component for passed entity.
</td></tr>
<tr><td class=docleft width=1%><a href=#lDeleteEntity>lDeleteEntity</a></td><td class=docright>
Deletes passed entity from the world.
</td></tr>
<tr><td class=docleft width=1%><a href=#lEntitiesCollide>lEntitiesCollide</a></td><td class=docright>
Returns true if entity collision boxes overlap.
</td></tr>
<tr><td class=docleft width=1%><a href=#lEntityImageCollide>lEntityImageCollide</a></td><td class=docright>
Returns true if images of entities collide.
</td></tr>
<tr><td class=docleft width=1%><a href=#lGetImage>lGetImage</a></td><td class=docright>
Returns the image in the entity renderable.
</td></tr>
<tr><td class=docleft width=1%><a href=#lGetImageFrame>lGetImageFrame</a></td><td class=docright>
Returns the image frame value in the entity renderable.
</td></tr>
<tr><td class=docleft width=1%><a href=#lGetResourceImage>lGetResourceImage</a></td><td class=docright>
Returns image from resource manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#lGetResourceSound>lGetResourceSound</a></td><td class=docright>
Returns sound from resource manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#lPlaySound>lPlaySound</a></td><td class=docright>
Plays sound previously loaded in the resouce manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#lSetVisible>lSetVisible</a></td><td class=docright>
Sets the renderable visible flag.
</td></tr>
<tr><td class=docleft width=1%><a href=#lStopAudioChannel>lStopAudioChannel</a></td><td class=docright>
Stops passed audio channel.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetColorComponent>
<tr><td class=doctop colspan=2>Method GetColorComponent:TColorComponent(e:TEntity)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns color component for passed entity.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetExpirationComponent>
<tr><td class=doctop colspan=2>Method GetExpirationComponent:TExpirationComponent(e:TEntity)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns expiration component for passed entity.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetPhysicsComponent>
<tr><td class=doctop colspan=2>Method GetPhysicsComponent:TPhysicsComponent(e:TEntity)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns physics component for passed entity.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetPositionComponent>
<tr><td class=doctop colspan=2>Method GetPositionComponent:TPositionComponent(e:TEntity)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns position component for passed entity.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetTransformComponent>
<tr><td class=doctop colspan=2>Method GetTransformComponent:TTransformComponent(e:TEntity)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns transform component for passed entity.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lDeleteEntity>
<tr><td class=doctop colspan=2>Method lDeleteEntity(e:TEntity) {rename</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Deletes passed entity from the world.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lEntitiesCollide>
<tr><td class=doctop colspan=2>Method lEntitiesCollide:Int(e1:TEntity, e2:TEntity) {bool rename</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns true if entity collision boxes overlap.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lEntityImageCollide>
<tr><td class=doctop colspan=2>Method lEntityImageCollide:Int(e1:TEntity, e2:TEntity) {bool rename</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns true if images of entities collide.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lGetImage>
<tr><td class=doctop colspan=2>Method lGetImage:TImage(e:TEntity) {rename</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns the image in the entity renderable.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lGetImageFrame>
<tr><td class=doctop colspan=2>Method lGetImageFrame:Int(e:TEntity) {rename</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns the image frame value in the entity renderable.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lGetResourceImage>
<tr><td class=doctop colspan=2>Method lGetResourceImage:TImage(imageName:String, groupName:String = "") {rename</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns image from resource manager.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lGetResourceSound>
<tr><td class=doctop colspan=2>Method lGetResourceSound:TSound(soundName:String, groupName:String = "") {rename</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns sound from resource manager.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lPlaySound>
<tr><td class=doctop colspan=2>Method lPlaySound:TChannel(soundName:String, groupName:String = "",  volume:Float, channel:TChannel) {rename</td></tr>
<tr><td class=docleft width=1%>Returns</td><td class=docright>Used Channel.</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Plays sound previously loaded in the resouce manager.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lSetVisible>
<tr><td class=doctop colspan=2>Method lSetVisible(e:TEntity, bool:Int) {rename</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets the renderable visible flag.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=lStopAudioChannel>
<tr><td class=doctop colspan=2>Method lStopAudioChannel(c:TChannel) {rename</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Stops passed audio channel.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TCameraComponent>
<tr><td class=doctop colspan=2>Type TCameraComponent Extends TComponent</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Camera component.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Add this component to the entity you want to track.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TCameraSystem>
<tr><td class=doctop colspan=2>Type TCameraSystem Extends TEntityProcessingSystem</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Camera System.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Follows the entity with the TCamera component.
Required component: TPosition, TCamera.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TCollisionComponent>
<tr><td class=doctop colspan=2>Type TCollisionComponent Extends TComponent</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Collision box component.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Collision is bounding box based.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TCollisionSystem>
<tr><td class=doctop colspan=2>Type TCollisionSystem Extends TEntitySystem</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Bounding box.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Required Components: TCollisionComponent, TPositionComponent.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TCollisionSystem_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#EntityToBag>EntityToBag</a></td><td class=docright>
Checks if entity collides with an entity in specified bag.
</td></tr>
<tr><td class=docleft width=1%><a href=#EntityToGroup>EntityToGroup</a></td><td class=docright>
Checks if entity is colliding with an entity in specified group.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetQuadTree>SetQuadTree</a></td><td class=docright>
Makes this system aware of quad tree system.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=EntityToBag>
<tr><td class=doctop colspan=2>Method EntityToBag:TBag(e1:TEntity, b:TBag)</td></tr>
<tr><td class=docleft width=1%>Returns</td><td class=docright>TBag containing the hit entities.</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Checks if entity collides with an entity in specified bag.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=EntityToGroup>
<tr><td class=doctop colspan=2>Method EntityToGroup:TBag(e1:TEntity, groupName:String)</td></tr>
<tr><td class=docleft width=1%>Returns</td><td class=docright>TBag containing the hit entities.</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Checks if entity is colliding with an entity in specified group.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetQuadTree>
<tr><td class=doctop colspan=2>Method SetQuadTree(q:TQuadTreeSystem)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Makes this system aware of quad tree system.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TColorComponent>
<tr><td class=doctop colspan=2>Type TColorComponent Extends TComponent {expose hidefields}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>RGBA component.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Used by Renderable and render system.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TColorComponent_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Apply>Apply</a></td><td class=docright>
Applies the color and alpha.
</td></tr>
<tr><td class=docleft width=1%><a href=#Set>Set</a></td><td class=docright>
Sets the color and alpha.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Apply>
<tr><td class=doctop colspan=2>Method Apply()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Applies the color and alpha.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Set>
<tr><td class=doctop colspan=2>Method Set(r:Int, g:Int, b:Int, a:Float)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets the color and alpha.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TEngine>
<tr><td class=doctop colspan=2>Type TEngine</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Game2D Engine.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TEngine_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#GetGame>GetGame</a></td><td class=docright>
Returns the current game.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetVSync>GetVSync</a></td><td class=docright>
Returns vertical blank flag.
</td></tr>
<tr><td class=docleft width=1%><a href=#IsPaused>IsPaused</a></td><td class=docright>
Returns true when the engine is paused.
</td></tr>
<tr><td class=docleft width=1%><a href=#RequestStop>RequestStop</a></td><td class=docright>
Stops the engine on the next update.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetDisplayMode>SetDisplayMode</a></td><td class=docright>
Sets physical screen resolution and graphics driver.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetPaused>SetPaused</a></td><td class=docright>
Sets engine pause mode.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetPauseKey>SetPauseKey</a></td><td class=docright>
Changes the default engine pause key.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetUpdateFrequency>SetUpdateFrequency</a></td><td class=docright>
Sets engine update frequency.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetVSync>SetVSync</a></td><td class=docright>
Sets vertical blank flag.
</td></tr>
<tr><td class=docleft width=1%><a href=#Start>Start</a></td><td class=docright>
Starts the engine.
</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TEngine_functions></a>Functions Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Create>Create</a></td><td class=docright>
Default Constructor.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetGame>
<tr><td class=doctop colspan=2>Method GetGame:TGame()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns the current game.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetVSync>
<tr><td class=doctop colspan=2>Method GetVSync:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns vertical blank flag.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=IsPaused>
<tr><td class=doctop colspan=2>Method IsPaused:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns true when the engine is paused.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=RequestStop>
<tr><td class=doctop colspan=2>Method RequestStop()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Stops the engine on the next update.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetDisplayMode>
<tr><td class=doctop colspan=2>Method SetDisplayMode(w:Int, h:Int, depth:Int = 0, herz:Int = 60, openGL:Int = False)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets physical screen resolution and graphics driver.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>A depth of 0 means a Windowed game.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetPaused>
<tr><td class=doctop colspan=2>Method SetPaused(bool:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets engine pause mode.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetPauseKey>
<tr><td class=doctop colspan=2>Method SetPauseKey(keycode:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Changes the default engine pause key.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetUpdateFrequency>
<tr><td class=doctop colspan=2>Method SetUpdateFrequency(fr:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets engine update frequency.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetVSync>
<tr><td class=doctop colspan=2>Method SetVSync(bool:Int = True)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets vertical blank flag.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Start>
<tr><td class=doctop colspan=2>Method Start()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Starts the engine.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Calls game Startup() method first.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Create>
<tr><td class=doctop colspan=2>Function Create:TEngine(game:TGame)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Default Constructor.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TExpirationComponent>
<tr><td class=doctop colspan=2>Type TExpirationComponent Extends TComponent {expose hidefields}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>A simple expiration value component.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Typically used for bullets, particles, triggers, buttons, etc.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TExpirationComponent_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#GetUpdatesLeft>GetUpdatesLeft</a></td><td class=docright>
Returns the amount of updates before this component expires.
</td></tr>
<tr><td class=docleft width=1%><a href=#HasExpired>HasExpired</a></td><td class=docright>
Returns True if the component has expired.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetUpdatesLeft>
<tr><td class=doctop colspan=2>Method GetUpdatesLeft:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns the amount of updates before this component expires.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=HasExpired>
<tr><td class=doctop colspan=2>Method HasExpired:Int() {bool}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns True if the component has expired.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TExpirationSystem>
<tr><td class=doctop colspan=2>Type TExpirationSystem Extends TEntityProcessingSystem</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Expiration system. Typically used for bullets, particles, triggers, buttons, etc.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Required Components: TExpiration.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TFixedTime>
<tr><td class=doctop colspan=2>Type TFixedTime</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Fixed time step and render tweening.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TFixedTime_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#GetDeltaTime>GetDeltaTime</a></td><td class=docright>
Returns update delta time (in millisecs)
</td></tr>
<tr><td class=docleft width=1%><a href=#GetTweening>GetTweening</a></td><td class=docright>
Calculates and returns the render tweening value used to smooth out frames.
</td></tr>
<tr><td class=docleft width=1%><a href=#Reset>Reset</a></td><td class=docright>
Resets the timer.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetUpdateFrequency>SetUpdateFrequency</a></td><td class=docright>
Sets the frame rate.
</td></tr>
<tr><td class=docleft width=1%><a href=#TimeStepNeeded>TimeStepNeeded</a></td><td class=docright>
Returns true if a logic step is needed.
</td></tr>
<tr><td class=docleft width=1%><a href=#Update>Update</a></td><td class=docright>
Adds passed time to the accumulator.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetDeltaTime>
<tr><td class=doctop colspan=2>Method GetDeltaTime:Int()</td></tr>
<tr><td class=docleft width=1%>Returns</td><td class=docright>Double.</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns update delta time (in millisecs)</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetTweening>
<tr><td class=doctop colspan=2>Method GetTweening:Double()</td></tr>
<tr><td class=docleft width=1%>Returns</td><td class=docright>Double.</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Calculates and returns the render tweening value used to smooth out frames.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Reset>
<tr><td class=doctop colspan=2>Method Reset()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Resets the timer.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetUpdateFrequency>
<tr><td class=doctop colspan=2>Method SetUpdateFrequency(f:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets the frame rate.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>The frame rate is converted to millisecs.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=TimeStepNeeded>
<tr><td class=doctop colspan=2>Method TimeStepNeeded:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns true if a logic step is needed.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>This is called from the TGame2D.Run() method.
returns: True if an update is needed.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Update>
<tr><td class=doctop colspan=2>Method Update:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Adds passed time to the accumulator.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>This is called from the TGame2D.Run() method.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TGame>
<tr><td class=doctop colspan=2>Type TGame Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>State based game using Artemax systems.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Uses one world for all states.
Uses the default systems. This can be changed by overriding the method SetSystems()</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TGame_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#AddGameState>AddGameState</a></td><td class=docright>
Adds state to this game with specified id.
</td></tr>
<tr><td class=docleft width=1%><a href=#AddRenderSystem>AddRenderSystem</a></td><td class=docright>
Adds a render system to this game, by index.
</td></tr>
<tr><td class=docleft width=1%><a href=#AddUpdateSystem>AddUpdateSystem</a></td><td class=docright>
Adds an update system to this game, by index.
</td></tr>
<tr><td class=docleft width=1%><a href=#CleanUp>CleanUp</a></td><td class=docright>
User hook to perform game cleanup code.
</td></tr>
<tr><td class=docleft width=1%><a href=#EnterState>EnterState</a></td><td class=docright>
Enter a gamestate with the provided transitions.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetCurrentState>GetCurrentState</a></td><td class=docright>
Returns the current game state.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetCurrentStateID>GetCurrentStateID</a></td><td class=docright>
Returns the ID of the current game state.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetGameStateByID>GetGameStateByID</a></td><td class=docright>
Returns game state by specified id.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetHeight>GetHeight</a></td><td class=docright>
Returns game height, or physical height if no virtual resolution has been used.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetRenderSystem>GetRenderSystem</a></td><td class=docright>
Returns render system by index.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetTitle>GetTitle</a></td><td class=docright>
Returns game name.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetUpdateSystem>GetUpdateSystem</a></td><td class=docright>
Returns update system by index.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetWidth>GetWidth</a></td><td class=docright>
Returns game width, or physical width if no virtual resolution has been used.
</td></tr>
<tr><td class=docleft width=1%><a href=#IsPaused>IsPaused</a></td><td class=docright>
Returns the pause mode value.
</td></tr>
<tr><td class=docleft width=1%><a href=#PlaySound>PlaySound</a></td><td class=docright>
Plays a previously loaded sound on passed channel or random channel if none provided.
</td></tr>
<tr><td class=docleft width=1%><a href=#RenderText>RenderText</a></td><td class=docright>
Renders text, centered and with shadow if needed.
</td></tr>
<tr><td class=docleft width=1%><a href=#RequestStop>RequestStop</a></td><td class=docright>
Asks the engine to stop running.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetGameResolution>SetGameResolution</a></td><td class=docright>
Sets game resolution.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetPause>SetPause</a></td><td class=docright>
Sets pause mode value.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetTitle>SetTitle</a></td><td class=docright>
Sets game name.
</td></tr>
<tr><td class=docleft width=1%><a href=#Startup>Startup</a></td><td class=docright>
User hook to perform game startup logic.
</td></tr>
<tr><td class=docleft width=1%><a href=#StopAllSound>StopAllSound</a></td><td class=docright>
Stops all sound channels.
</td></tr>
<tr><td class=docleft width=1%><a href=#Transitioning>Transitioning</a></td><td class=docright>
Returns true when transitioning between states.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=AddGameState>
<tr><td class=doctop colspan=2>Method AddGameState(gameState:TGameState, id:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Adds state to this game with specified id.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>First state added is the default state.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=AddRenderSystem>
<tr><td class=doctop colspan=2>Method AddRenderSystem(system:TEntitySystem, index:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Adds a render system to this game, by index.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>The system with index 0 is processed first.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=AddUpdateSystem>
<tr><td class=doctop colspan=2>Method AddUpdateSystem(system:TEntitySystem, index:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Adds an update system to this game, by index.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>The system with index 0 is processed first.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=CleanUp>
<tr><td class=doctop colspan=2>Method CleanUp()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook to perform game cleanup code.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>This method is called when the engine stops.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=EnterState>
<tr><td class=doctop colspan=2>Method EnterState(id:Int, enter:TTransition = Null, leave:TTransition = Null)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Enter a gamestate with the provided transitions.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetCurrentState>
<tr><td class=doctop colspan=2>Method GetCurrentState:TGameState()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns the current game state.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetCurrentStateID>
<tr><td class=doctop colspan=2>Method GetCurrentStateID:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns the ID of the current game state.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetGameStateByID>
<tr><td class=doctop colspan=2>Method GetGameStateByID:TGameState(id:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns game state by specified id.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetHeight>
<tr><td class=doctop colspan=2>Method GetHeight:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns game height, or physical height if no virtual resolution has been used.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetRenderSystem>
<tr><td class=doctop colspan=2>Method GetRenderSystem:TEntitySystem(index:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns render system by index.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetTitle>
<tr><td class=doctop colspan=2>Method GetTitle:String()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns game name.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetUpdateSystem>
<tr><td class=doctop colspan=2>Method GetUpdateSystem:TEntitySystem(index:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns update system by index.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetWidth>
<tr><td class=doctop colspan=2>Method GetWidth:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns game width, or physical width if no virtual resolution has been used.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=IsPaused>
<tr><td class=doctop colspan=2>Method IsPaused:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns the pause mode value.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=PlaySound>
<tr><td class=doctop colspan=2>Method PlaySound:TChannel(s:TSound, c:TChannel, volume:Float)</td></tr>
<tr><td class=docleft width=1%>Returns</td><td class=docright>Used channel.</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Plays a previously loaded sound on passed channel or random channel if none provided.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=RenderText>
<tr><td class=doctop colspan=2>Method RenderText(text:String, xpos:Int, ypos:Int, centered:Int = False, shadow:Int = False, shadowDistance:Float = 1.0)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Renders text, centered and with shadow if needed.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=RequestStop>
<tr><td class=doctop colspan=2>Method RequestStop()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Asks the engine to stop running.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetGameResolution>
<tr><td class=doctop colspan=2>Method SetGameResolution(w:Int, h:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets game resolution.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetPause>
<tr><td class=doctop colspan=2>Method SetPause(bool:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets pause mode value.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetTitle>
<tr><td class=doctop colspan=2>Method SetTitle(newName:String)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets game name.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Startup>
<tr><td class=doctop colspan=2>Method Startup()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook to perform game startup logic.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>This method is called when the engine starts.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=StopAllSound>
<tr><td class=doctop colspan=2>Method StopAllSound()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Stops all sound channels.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Transitioning>
<tr><td class=doctop colspan=2>Method Transitioning:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns true when transitioning between states.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TGameState>
<tr><td class=doctop colspan=2>Type TGameState Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>A game state template.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TGameState_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Enter>Enter</a></td><td class=docright>
User hook for code when entering this state.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetGame>GetGame</a></td><td class=docright>
Returns the game owning this state.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetId>GetId</a></td><td class=docright>
Returns the ID of this state.
</td></tr>
<tr><td class=docleft width=1%><a href=#Leave>Leave</a></td><td class=docright>
User hook for code when leaving this state.
</td></tr>
<tr><td class=docleft width=1%><a href=#PostRender>PostRender</a></td><td class=docright>
User hook for rendering after state rendering.
</td></tr>
<tr><td class=docleft width=1%><a href=#PostUpdate>PostUpdate</a></td><td class=docright>
User hook for update code after state updating.
</td></tr>
<tr><td class=docleft width=1%><a href=#PreRender>PreRender</a></td><td class=docright>
User hook for rendering before state rendering.
</td></tr>
<tr><td class=docleft width=1%><a href=#PreUpdate>PreUpdate</a></td><td class=docright>
User hook for update code before state updating.
</td></tr>
<tr><td class=docleft width=1%><a href=#Render>Render</a></td><td class=docright>
User hook for state render code.
</td></tr>
<tr><td class=docleft width=1%><a href=#Update>Update</a></td><td class=docright>
User hook for state update logic.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Enter>
<tr><td class=doctop colspan=2>Method Enter()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook for code when entering this state.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetGame>
<tr><td class=doctop colspan=2>Method GetGame:TGame()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns the game owning this state.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetId>
<tr><td class=doctop colspan=2>Method GetId:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns the ID of this state.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Leave>
<tr><td class=doctop colspan=2>Method Leave()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook for code when leaving this state.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=PostRender>
<tr><td class=doctop colspan=2>Method PostRender(tween:Double)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook for rendering after state rendering.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=PostUpdate>
<tr><td class=doctop colspan=2>Method PostUpdate(delta:Double)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook for update code after state updating.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=PreRender>
<tr><td class=doctop colspan=2>Method PreRender(tween:Double)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook for rendering before state rendering.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=PreUpdate>
<tr><td class=doctop colspan=2>Method PreUpdate(delta:Double)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook for update code before state updating.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Render>
<tr><td class=doctop colspan=2>Method Render(tween:Double)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook for state render code.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Update>
<tr><td class=doctop colspan=2>Method Update(delta:Double)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook for state update logic.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TLayeredRenderSystem>
<tr><td class=doctop colspan=2>Type TLayeredRenderSystem Extends TEntityProcessingSystem Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Layered Render system.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Uses layers to order the drawing of renderables.
Uses QuadTree and Camera when enabled through UseQuadTree()</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TLayeredRenderSystem_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#CreateRenderable>CreateRenderable</a></td><td class=docright>
To be implemented by your render system.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetRenderable>GetRenderable</a></td><td class=docright>
Returns renderable belonging to passed entity.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetCamera>SetCamera</a></td><td class=docright>
Sets camera system reference.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetQuadTree>SetQuadTree</a></td><td class=docright>
Sets quadtree system reference.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=CreateRenderable>
<tr><td class=doctop colspan=2>Method CreateRenderable:TRenderable(e:TEntity) Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>To be implemented by your render system.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetRenderable>
<tr><td class=doctop colspan=2>Method GetRenderable:TRenderable(e:TEntity)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns renderable belonging to passed entity.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetCamera>
<tr><td class=doctop colspan=2>Method SetCamera(s:TCameraSystem)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets camera system reference.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetQuadTree>
<tr><td class=doctop colspan=2>Method SetQuadTree(s:TQuadTreeSystem)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets quadtree system reference.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TMovementSystem>
<tr><td class=doctop colspan=2>Type TMovementSystem Extends TEntityProcessingSystem</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Movement System. Uses interpolation.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Required component: TPosition.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TPhysicsComponent>
<tr><td class=doctop colspan=2>Type TPhysicsComponent Extends TComponent {expose hidefields}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Simple Newton physics component.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Manages acceleration, velocity, friction.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TPhysicsComponent_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#AddAcceleration>AddAcceleration</a></td><td class=docright>
Adds specified amount to acceleration.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetAcceleration>GetAcceleration</a></td><td class=docright>
Returns current acceleration.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetFriction>GetFriction</a></td><td class=docright>
Returns friction.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetVelocity>GetVelocity</a></td><td class=docright>
Returns velocity.
</td></tr>
<tr><td class=docleft width=1%><a href=#ResetAcceleration>ResetAcceleration</a></td><td class=docright>
Stops acceleration.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetAcceleration>SetAcceleration</a></td><td class=docright>
Sets the acceleration value.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetFriction>SetFriction</a></td><td class=docright>
Sets friction.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetVelocity>SetVelocity</a></td><td class=docright>
Sets velocity.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetVelocityV>SetVelocityV</a></td><td class=docright>
Sets velocity by specified vector.
</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TPhysicsComponent_functions></a>Functions Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Create>Create</a></td><td class=docright>
Constructor.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=AddAcceleration>
<tr><td class=doctop colspan=2>Method AddAcceleration(angle:Float, amount:Float = 1)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Adds specified amount to acceleration.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetAcceleration>
<tr><td class=doctop colspan=2>Method GetAcceleration:TVector2D()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns current acceleration.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetFriction>
<tr><td class=doctop colspan=2>Method GetFriction:Float()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns friction.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetVelocity>
<tr><td class=doctop colspan=2>Method GetVelocity:TVector2D()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns velocity.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=ResetAcceleration>
<tr><td class=doctop colspan=2>Method ResetAcceleration()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Stops acceleration.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetAcceleration>
<tr><td class=doctop colspan=2>Method SetAcceleration(angle:Float, amount:Float = 1.0)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets the acceleration value.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Specified amount is the initial acceleration.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetFriction>
<tr><td class=doctop colspan=2>Method SetFriction(f:Float)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets friction.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetVelocity>
<tr><td class=doctop colspan=2>Method SetVelocity(angle:Float, amount:Float = 1.0)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets velocity.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetVelocityV>
<tr><td class=doctop colspan=2>Method SetVelocityV(v:TVector2D)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets velocity by specified vector.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Create>
<tr><td class=doctop colspan=2>Function Create:TPhysicsComponent(friction:Float = 0.0) {hidden}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Constructor.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TPhysicsSystem>
<tr><td class=doctop colspan=2>Type TPhysicsSystem Extends TEntityProcessingSystem</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Simple Newton physics system. It handles acceleration, velocity and friction.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Required components: TPosition, TPhysics.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TPositionComponent>
<tr><td class=doctop colspan=2>Type TPositionComponent Extends TComponent {expose hidefields}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Position component, also handles render tweening.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TPositionComponent_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Changed>Changed</a></td><td class=docright>
Returns true if this point has changed since last update.
</td></tr>
<tr><td class=docleft width=1%><a href=#Interpolate>Interpolate</a></td><td class=docright>
Sets the render position according to specified tweening.
</td></tr>
<tr><td class=docleft width=1%><a href=#Update>Update</a></td><td class=docright>
Updates the previous position with current position.
</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TPositionComponent_functions></a>Functions Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Create>Create</a></td><td class=docright>
Create function.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Changed>
<tr><td class=doctop colspan=2>Method Changed:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns true if this point has changed since last update.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Interpolate>
<tr><td class=doctop colspan=2>Method Interpolate(tween:Double) {hidden}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets the render position according to specified tweening.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Call this in your render system before rendering.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Update>
<tr><td class=doctop colspan=2>Method Update() {hidden}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Updates the previous position with current position.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Call this in your render system before rendering.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Create>
<tr><td class=doctop colspan=2>Function Create:TPositionComponent(x:Float, y:Float) {hidden}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Create function.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TQuadTreeComponent>
<tr><td class=doctop colspan=2>Type TQuadTreeComponent Extends TComponent</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Quad Tree item component.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TQuadTreeNode>
<tr><td class=doctop colspan=2>Type TQuadTreeNode</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Node for use in a quad-tree Artemax system.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>leaf node = not subdivided, contains entities.
branch node = subdivided, has children nodes, contains no items.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TQuadTreeSystem>
<tr><td class=doctop colspan=2>Type TQuadTreeSystem Extends TEntityProcessingSystem</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Quad Tree entity system.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TQuadTreeSystem_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#GetAllEntities>GetAllEntities</a></td><td class=docright>
Returns a list of all entities in this tree.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetEntities>GetEntities</a></td><td class=docright>
Returns all entities overlapping specified rect.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetArea>SetArea</a></td><td class=docright>
Set QuadTree world area.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetMaxNodeEntities>SetMaxNodeEntities</a></td><td class=docright>
Sets the maximum amount of entities before a node is subdivided.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetAllEntities>
<tr><td class=doctop colspan=2>Method GetAllEntities:TList()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns a list of all entities in this tree.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetEntities>
<tr><td class=doctop colspan=2>Method GetEntities:TBag(r:TRect)</td></tr>
<tr><td class=docleft width=1%>Returns</td><td class=docright>TBag.</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns all entities overlapping specified rect.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetArea>
<tr><td class=doctop colspan=2>Method SetArea(x:Int, y:Int, w:Int, h:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Set QuadTree world area.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetMaxNodeEntities>
<tr><td class=doctop colspan=2>Method SetMaxNodeEntities(m:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets the maximum amount of entities before a node is subdivided.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TRenderable>
<tr><td class=doctop colspan=2>Type TRenderable Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Contains entity render related code.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Not a component. The render system runs the render method in this type.
Use Initialise() to setup the type (load image,etc) and Render() to draw the entity.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TRenderFormComponent>
<tr><td class=doctop colspan=2>Type TRenderFormComponent Extends TComponent Final</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>TRenderForm component.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>The rendersystem will create a TRenderable when an entity holding this
component is added to it. The TRenderable is stored in the render system by entity id.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TRenderLayerComponent>
<tr><td class=doctop colspan=2>Type TRenderLayerComponent Extends TComponent</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Render layer component.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Add to entity you want to render. Index is render order.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TResources>
<tr><td class=doctop colspan=2>Type TResources</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Manages resources.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>This manager is not instantiated.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TResources_functions></a>Functions Summary</th></tr>
<tr><td class=docleft width=1%><a href=#AddGroup>AddGroup</a></td><td class=docright>
Adds a new group to the manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetGroup>GetGroup</a></td><td class=docright>
Retrieves a group from the manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetImage>GetImage</a></td><td class=docright>
Gets an image from the manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetObject>GetObject</a></td><td class=docright>
Gets an object from the manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetSound>GetSound</a></td><td class=docright>
Gets sound from the manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#StoreImage>StoreImage</a></td><td class=docright>
Stores image in the manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#StoreObject>StoreObject</a></td><td class=docright>
Stores object in the manager.
</td></tr>
<tr><td class=docleft width=1%><a href=#StoreSound>StoreSound</a></td><td class=docright>
Stores sound in the manager.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=AddGroup>
<tr><td class=doctop colspan=2>Function AddGroup:TMap(groupName:String)</td></tr>
<tr><td class=docleft width=1%>Returns</td><td class=docright>TMap.</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Adds a new group to the manager.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetGroup>
<tr><td class=doctop colspan=2>Function GetGroup:TMap(groupName:String)</td></tr>
<tr><td class=docleft width=1%>Returns</td><td class=docright>TMap.</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Retrieves a group from the manager.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetImage>
<tr><td class=doctop colspan=2>Function GetImage:TImage(imageName:String, groupName:String = "")</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Gets an image from the manager.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetObject>
<tr><td class=doctop colspan=2>Function GetObject:Object(objectName:String, groupName:String = "")</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Gets an object from the manager.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetSound>
<tr><td class=doctop colspan=2>Function GetSound:TSound(soundName:String, groupName:String = "")</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Gets sound from the manager.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=StoreImage>
<tr><td class=doctop colspan=2>Function StoreImage(image:TImage, imageName:String, groupName:String = "")</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Stores image in the manager.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Creates the group if needed.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=StoreObject>
<tr><td class=doctop colspan=2>Function StoreObject(o:Object, objectName:String, groupName:String = "")</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Stores object in the manager.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Creates the group if needed.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=StoreSound>
<tr><td class=doctop colspan=2>Function StoreSound(sound:TSound, soundName:String, groupName:String = "")</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Stores sound in the manager.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Creates the group if needed.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TScriptComponent>
<tr><td class=doctop colspan=2>Type TScriptComponent Extends TComponent</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>LUA Script component.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TScriptSystem>
<tr><td class=doctop colspan=2>Type TScriptSystem Extends TEntityProcessingSystem</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>LUA Scripting System. Uses LuaJIT 2.0, which is added to LuGI.core.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Scripts are stored as strings in the system.
<p>
Your LUA script must contain the following functions:
1) Added(entity) - Is called when the entity is added to the system. Use this to setup your entity.
2) Process(entity) - Is called when the entity is processed.
3) Removed(entity) - Is called when the entity leaves the system.
<p>
Required component: TScriptComponent.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TScriptSystem_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#CallFunction>CallFunction</a></td><td class=docright>
Calls a LUA function.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetLUAInt>GetLUAInt</a></td><td class=docright>
Returns LUA global as Int.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetLUAString>GetLUAString</a></td><td class=docright>
Returns LUA string global.
</td></tr>
<tr><td class=docleft width=1%><a href=#RefreshAllScripts>RefreshAllScripts</a></td><td class=docright>
Refreshes scripts for all active entities.
</td></tr>
<tr><td class=docleft width=1%><a href=#RefreshScript>RefreshScript</a></td><td class=docright>
Refresh the script for passed entity.
</td></tr>
<tr><td class=docleft width=1%><a href=#RunScriptFile>RunScriptFile</a></td><td class=docright>
Runs a script from a file.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=CallFunction>
<tr><td class=doctop colspan=2>Method CallFunction(functionName:String)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Calls a LUA function.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>No args! :(</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetLUAInt>
<tr><td class=doctop colspan=2>Method GetLUAInt:Int(globalName:String)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns LUA global as Int.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetLUAString>
<tr><td class=doctop colspan=2>Method GetLUAString:String(globalName:String)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns LUA string global.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=RefreshAllScripts>
<tr><td class=doctop colspan=2>Method RefreshAllScripts()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Refreshes scripts for all active entities.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Also runs the Added function in the scripts.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=RefreshScript>
<tr><td class=doctop colspan=2>Method RefreshScript(e:TEntity)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Refresh the script for passed entity.</td></tr>
<tr><td class=docleft width=1%>Information</td><td class=docright>Also runs the Added function in the script.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=RunScriptFile>
<tr><td class=doctop colspan=2>Method RunScriptFile:Int(fileName:String)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Runs a script from a file.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TTransformComponent>
<tr><td class=doctop colspan=2>Type TTransformComponent Extends TComponent {expose hidefields}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Transform describes scale and rotation.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TTransformComponent_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#AddRotation>AddRotation</a></td><td class=docright>
Adds specified degrees to current rotation value.
</td></tr>
<tr><td class=docleft width=1%><a href=#Apply>Apply</a></td><td class=docright>
Applies scale and rotation.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetRotation>GetRotation</a></td><td class=docright>
Returns rotation value.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetScaleX>GetScaleX</a></td><td class=docright>
Returns scale X value.
</td></tr>
<tr><td class=docleft width=1%><a href=#GetScaleY>GetScaleY</a></td><td class=docright>
Returns scale Y value.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetRotation>SetRotation</a></td><td class=docright>
Sets rotation value.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetScale>SetScale</a></td><td class=docright>
Sets scale value.
</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TTransformComponent_functions></a>Functions Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Create>Create</a></td><td class=docright>
Convenience constructor.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=AddRotation>
<tr><td class=doctop colspan=2>Method AddRotation(degree:Float)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Adds specified degrees to current rotation value.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Apply>
<tr><td class=doctop colspan=2>Method Apply()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Applies scale and rotation.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetRotation>
<tr><td class=doctop colspan=2>Method GetRotation:Float()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns rotation value.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetScaleX>
<tr><td class=doctop colspan=2>Method GetScaleX:Float()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns scale X value.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=GetScaleY>
<tr><td class=doctop colspan=2>Method GetScaleY:Float()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns scale Y value.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetRotation>
<tr><td class=doctop colspan=2>Method SetRotation(r:Float)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets rotation value.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetScale>
<tr><td class=doctop colspan=2>Method SetScale(x:Float, y:Float)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets scale value.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Create>
<tr><td class=doctop colspan=2>Function Create:TTransformComponent(scaleX:Float = 1.0, scaleyY:Float = 1.0, rotation:Float = 0.0) {hidden}</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Convenience constructor.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TTransition>
<tr><td class=doctop colspan=2>Type TTransition Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Game state transition.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TTransition_fields></a>Fields Summary</th></tr><tr><td colspan=2>
<a href=#_color>_color</a>
, 
<a href=#_transitionLength>_transitionLength</a>
</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TTransition_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Initialize>Initialize</a></td><td class=docright>
User hook to initialize effect.
</td></tr>
<tr><td class=docleft width=1%><a href=#IsComplete>IsComplete</a></td><td class=docright>
Returns true if the transition is complete.
</td></tr>
<tr><td class=docleft width=1%><a href=#Render>Render</a></td><td class=docright>
Render transition effect.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetColor>SetColor</a></td><td class=docright>
Sets transition effect color.
</td></tr>
<tr><td class=docleft width=1%><a href=#SetLength>SetLength</a></td><td class=docright>
Sets transition effect length (in millisecs)
</td></tr>
<tr><td class=docleft width=1%><a href=#Update>Update</a></td><td class=docright>
Perform transition action.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=_color>
<tr><td class=doctop colspan=2>Field _color:TColor = TColor.Create(0,0,0,1.0)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Transition effect color and alpha.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=_transitionLength>
<tr><td class=doctop colspan=2>Field _transitionLength:Int = 1000</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Transition effect length.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Initialize>
<tr><td class=doctop colspan=2>Method Initialize() Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook to initialize effect.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=IsComplete>
<tr><td class=doctop colspan=2>Method IsComplete:Int() Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns true if the transition is complete.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Render>
<tr><td class=doctop colspan=2>Method Render(g:TGame) Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Render transition effect.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetColor>
<tr><td class=doctop colspan=2>Method SetColor(r:Int, g:Int, b:Int)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets transition effect color.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=SetLength>
<tr><td class=doctop colspan=2>Method SetLength(l:Float)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Sets transition effect length (in millisecs)</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Update>
<tr><td class=doctop colspan=2>Method Update(delta:Double) Abstract</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Perform transition action.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TTransitionEmpty>
<tr><td class=doctop colspan=2>Type TTransitionEmpty Extends TTransition</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>An empty gamestate transition.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TTransitionFadeIn>
<tr><td class=doctop colspan=2>Type TTransitionFadeIn Extends TTransition</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>A fade-in effect.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TTransitionFadeIn_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Initialize>Initialize</a></td><td class=docright>
User hook to initialize effect.
</td></tr>
<tr><td class=docleft width=1%><a href=#IsComplete>IsComplete</a></td><td class=docright>
Returns true if the transition is complete.
</td></tr>
<tr><td class=docleft width=1%><a href=#Render>Render</a></td><td class=docright>
Render transition effect.
</td></tr>
<tr><td class=docleft width=1%><a href=#Update>Update</a></td><td class=docright>
Perform transition action.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Initialize>
<tr><td class=doctop colspan=2>Method Initialize()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>User hook to initialize effect.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=IsComplete>
<tr><td class=doctop colspan=2>Method IsComplete:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns true if the transition is complete.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Render>
<tr><td class=doctop colspan=2>Method Render(g:TGame)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Render transition effect.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Update>
<tr><td class=doctop colspan=2>Method Update(delta:Double)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Perform transition action.</td></tr>
</table>
<br>
<table class=doc width=100% cellspacing=3 id=TTransitionFadeOut>
<tr><td class=doctop colspan=2>Type TTransitionFadeOut Extends TTransition</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>A slow fade-out effect.</td></tr>
</table>
<table class=doc width=90% align=center><tr ><th class=doctop colspan=2 align=left><a name=TTransitionFadeOut_methods></a>Methods Summary</th></tr>
<tr><td class=docleft width=1%><a href=#Initialize>Initialize</a></td><td class=docright>
Initialize effect.
</td></tr>
<tr><td class=docleft width=1%><a href=#IsComplete>IsComplete</a></td><td class=docright>
Returns true if the transition is complete.
</td></tr>
<tr><td class=docleft width=1%><a href=#Render>Render</a></td><td class=docright>
Render transition effect.
</td></tr>
<tr><td class=docleft width=1%><a href=#Update>Update</a></td><td class=docright>
Perform transition action.
</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Initialize>
<tr><td class=doctop colspan=2>Method Initialize()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Initialize effect.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=IsComplete>
<tr><td class=doctop colspan=2>Method IsComplete:Int()</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Returns true if the transition is complete.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Render>
<tr><td class=doctop colspan=2>Method Render(g:TGame)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Render transition effect.</td></tr>
</table>
<table class=doc width=100% cellspacing=3 id=Update>
<tr><td class=doctop colspan=2>Method Update(delta:Double)</td></tr>
<tr><td class=docleft width=1%>Description</td><td class=docright>Perform transition action.</td></tr>
</table>
<br>
<h2 id=modinfo>Module Information</h2>
<table width=100%>
<tr><th width=1%>Version</th><td>0.50</td></tr>
<tr><th width=1%>License</th><td>MIT</td></tr>
<tr><th width=1%>Copyright</th><td>2012 Wiebo de Wit</td></tr>
<tr><th width=1%>History</th><td>0.50</td></tr>
</body></html>
